Software agents may operate entirely independently performing discrete tasks. However, often multiple agants cooperate on a single task, or share useful infornation with one another. This can be done using some form of coordinating agent, but more often more loosely coupled. Communications between agents may be direct using messages or invoking methods, or indirect through a shared communication means such as a blackboard architecture, allowing emergent behaviour beyond that coded into any individual agent. The agents may execute within a single machine or in distributed AI over multiple machines, maybe across the whole internet.
. Multiple agents operating in an environment may affect one another indirectly, and so give rise to unexpected emergent behaviour, but the term cooperating agents would normally be reserved for situations where there is some form of explicit or planned cooperation.
Defined on page 379
Used on pages 379, 388
Also known as co-operating agents